﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Microsoft.Practices.Unity;
using System.Web.ModelBinding;
using ddcCajamarca.BusinessEntities.Directorio;
using ddcCajamarca.BusinessLogic.Directorio.Service;

namespace ddcCajamarca.Web.Directorio
{
    public partial class frmListVerPersonas : System.Web.UI.Page
    {
        [Dependency]
        public IPersonaBL personaBL { get; set; }

        [Dependency]
        public IActividadBL actividadBL { get; set; }

        [Dependency]
        public IUbigeoBL ubigeoBL { get; set; }

        [Dependency]
        public IOrganizacionBL organizacionBL { get; set; }

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
                ddlActividad.SelectedValue = "1";
        }

        public IEnumerable<PersonaDTO> GetPersonas([Control("txtCriterio")]string criterio, [Control("ddlActividad")]string ac, [Control("ddlUbigeo")]string ubi, [Control("ddlOrganizacion")]string org, [Control("chbAutoridad")]bool Aut)
        {
            if (IsPostBack)
            {
                int autoridadVal = 0;

                if (chbAutoridad.Checked == false)
                {
                    autoridadVal = 0;
                }
                else
                {
                    autoridadVal = 1;
                }
                return personaBL.GetPersonasByCriterios(criterio, ddlActividad.SelectedItem.ToString(), ddlUbigeo.SelectedItem.ToString(), ddlOrganizacion.SelectedItem.ToString(), autoridadVal);
            }
            else
            {
                return personaBL.GetPersonasByCriterios(criterio, "--", "--", "NINGUNA", 0);
            }

        }

        public IEnumerable<Actividad> GetActividad()
        {
            return actividadBL.GetAllActividad();
        }

        public IEnumerable<Ubigeo> GetUbigeo()
        {
            return ubigeoBL.GetAllUbigeo();
        }

        public IEnumerable<Organizacion> GetOrganizacion()
        {
            return organizacionBL.GetAllOrganizaciones();
        }

        protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
        {

        }
    }
}